package com.lsp.microorder.pay.config;

import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;

/**
 * @author renr
 */
@Data
@Configuration
//@ConfigurationProperties(prefix = "pay.alipay")
public class AliPayProperties {

    /**
     * 支付宝gatewayUrl
     */
    @Value("${pay.alipay.gatewayUrl}")
    private String gatewayUrl;
    /**
     * 商户应用id
     */
    @Value("${pay.alipay.appid}")
    private String appid;
    /**
     * RSA私钥，用于对商户请求报文加签
     */
    @Value("${pay.alipay.appPrivateKey}")
    private String appPrivateKey;
    /**
     * 支付宝RSA公钥，用于验签支付宝应答
     */
    @Value("${pay.alipay.alipayPublicKey}")
    private String alipayPublicKey;
    /**
     * 签名类型
     */
    private String signType = "RSA2";

    /**
     * 格式
     */
    private String formate = "json";
    /**
     * 编码
     */
    private String charset = "UTF-8";

    /**
     * 同步地址
     */
    @Value("${pay.alipay.returnUrl}")
    private String returnUrl;

    /**
     * 中途取消支付跳转的界面
     */
    @Value("${pay.alipay.quitUrl}")
    private String quitUrl;
    /**
     * 异步地址
     */
    @Value("${pay.alipay.notifyUrl}")
    private String notifyUrl;

    /**
     * 最大查询次数
     */
    private static int maxQueryRetry = 5;
    /**
     * 查询间隔（毫秒）
     */
    private static long queryDuration = 5000;
    /**
     * 最大撤销次数
     */
    private static int maxCancelRetry = 3;
    /**
     * 撤销间隔（毫秒）
     */
    private static long cancelDuration = 3000;
}
